/* 海盗们截获了一艘装满各种各样古董的货船，每一件古董都价值连城，一旦打碎了就失去了它的价值。
海盗船载重量为C，每件古董的重量分别为wi，海盗们应该如何把尽可能多数量的宝贝装上海盗船呢？*/

#include<iostream>
#include<algorithm>

const int N=1000005;
using namespace std;

double w[N];

int main(){
    double c;
    int n;
    cout<<"请输入载重量c及古董个数n："<<endl;
    cin>>c>>n;
    cout<<"请输入每个古董的重量，用空格分开："<<endl;
    for(int i=0; i<n;i++){
        cin>>w[i];
    }
    sort(w, w+n);
    double tmp = 0.0;
    // int ans = 0;
    int ans = n;
    for(int i=0; i<n;i++){
        tmp += w[i];
        // if(tmp <=c){
        //     cout<<"可以装入这个古董，重量为："<<w[i]<<endl;
        //     ans ++;
        // }
        // else{
        //     break;
        // }
        if(tmp>=c){
            if(tmp==c){
                ans = i + 1;
            }else{
                ans = i;
            }
            break;
        }
        cout<<"可以装入这个古董，重量为："<<w[i]<<endl;
    }

    cout<<"能装入的古董最大数量为Ans=";
    cout<<ans<<endl;
    return 0;
}